cSCRIPT EXAMPLES ---------------- Contents -------- I. "Installation" of example scripts. II. Example script descriptions. I. "Installation" of example scripts. ------------------------------------- You can "install" the example scripts by choosing "Script | Install/Uninstall examples." This loads, and causes to be loaded on start-up, the Script Manager. The Script Manager is an example script for setting up and working with scripts. It has a default configuration designed to make it easy for you to explore the functionality the examples provide. Once installed, you'll find selected scripts on the "Example scripts" menu. Choose "Example scripts | Script directory" to see all the selected examples, including those the Script Manager knows of but does not add to the menu. You can customize the Script Manager and maintain it as a part of your IDE, changing the scripts, the menus they are assigned to, their autoload statuses, etc. Or you can remove it by choosing "Script | Install/Uninstall examples" again. For more information about the Script Manager, see the entry below and the file headers for SPPMAN.SPP and its related files. II. Example script descriptions. -------------------------------- The script examples directory contains the following scripts and script applets: SCRIPT MANAGEMENT ----------------- SPPMAN.SPP Script Manager. Allows you to specify scripts for autoloading, and add scripts to IDE menus. Provides a script directory showing script names, descriptions, and autoload and load statuses. The directory window lets you load and unload scripts, edit them in the specified editor, and edit the Script Manager data file. LOADLAST.SPP Load Last Script. Loads the last-loaded script. Useful for frequently reloading a script under development (before it is assigned to a hot key, menu, or some other quick trigger). TEST.SPP Test harness. EDITING AND CODING ------------------ APIEXP.SPP API Expander. Expands current word in editor to the matching Windows API or C RTL signiture. Provides selection list if seed string has multiple matches. If the match is an RTL member, API Expander indicates if the corresponding header file needs to be added to the source file. CODELIB.SPP Code Library. Displays libraries of code snippets you can insert in the current buffer. You can also edit code library data files, and create library entries from selected text. You can create as many code libraries as you want. EDONLY.SPP Edit-only. Temporarily shows only those lines in the current buffer that contain a specified string. Useful for seeing how an identifier is being used, making changes without searching and replacing, isolating strings for spell-checking, etc. SHIFTBLK.SPP Shift Block. Shifts the current block right or left a column at a time. OPENHDR.SPP Open Header. Opens the .h or .hpp file corresponding to the current source file. Optionally creates a header file if one does not exist. FILEINSR.SPP File Insert. Inserts a file into the current buffer. ALIGNEQ.SPP Align at Equals. Aligns a block of assignments by positioning the equals operators one space after the longest lvalue in the current block. REVISIT.SPP Code Revisit Tool. Quickly lists occurrences of a configurable "revisit this code" marker in all files in the specified directory. LONGLINE.SPP Long Line Finder. Searches all .C, .H, .CPP, .HPP, and .SPP files in the specified directory and reports all lines that are longer than a given threshold value to the message database. Double-click a message to edit the referenced file. FINDTABS.SPP Find Tabs. Searches all .C, .H, .CPP, .HPP, and .SPP files in the specified directory and reports all lines that have at least one tab character to the message database. Double- click a message to edit the referenced file. Useful for coding styles that don't use tab characters. EDITSIZE.SPP Editor Size. Allows easy customization of editor window size and position without changing default values in startup.spp. Config.spp provides a different but more comprehensive approach to positioning IDE windows. COMMENT.SPP Commenter. "Comments-out" the selected block, or uncomments the lines if they are already commented. SRCHALL.SPP Search All. Searches and replaces across files in the current project. DEBUGGING --------- EVALTIPS.SPP Evaluation Tips. When the debugger has a process loaded, evaluates the item under the cursor and displays the result in a mouse tip. VIEWLOCS.SPP View Locals. Inspects local variables if the debugger has a process. PROJECT MANAGEMENT ------------------ LOADPROJ.SPP Load Project. Opens the last project on start-up. PRJNOTES.SPP Project Notes. For new projects, creates a notes text file in the project directory and adds it to the project. The notes file will contain any text found in a template file. MISCELLANEOUS ------------- FASTOPEN.SPP Fast Open. Opens files and projects based on a search path, so you don't have to navigate directories. AUTOSAVE.SPP Autosave. Saves files, environment, desktop, project, and/or messages at the specified interval. NETHELP.SPP Internet Help. Open an URL with Netscape Navigator by selecting from a list of programming pages, FTP sites, and newsgroups. SOUND.SPP Sound Enabler. Plays WAV files on specified IDE events, such as Build Failure. KEYASSGN.SPP Key Assignments. Shows what commands are assigned to a given key sequence. DIRTOOL.SPP Directory Tool. Creates a new tool called "Directory Listing," which takes a filespec and generates a directory listing in the message window. CONFIG.SPP Configure Windows. Resizes and positions IDE windows as they are created. Also maps keys in the default and classic keyboards for buffer manipulation. SUPPORT CLASSES AND ROUTINES ---------------------------- SORT.SPP Sort. Quick Sort routines. FOREACH.SPP For Each. Calls a function for all the nodes of the given type in a project. FILE.SPP File Classes. Includes configuration file management. MSG.SPP Message Class. Provides methods to simplify and standardize user messages. Message captions automatically indicate the calling module. MISC.SPP Miscellaneous. Miscellaneous script. DEMONSTRATION ------------- INTNATL.SPP International. Demonstrates the use of FormatString() for localization of strings in scripts. CRTL.SPP C RTL. Demonstrates script access to the C RTL by writing Albert's words to a file. AUTO.SPP Automation. Demonstrates the IDE as an OLE automation controller and server. LIST.SPP List Window. Demonstrates a simple sorted list window. POPUP.SPP Popup Window. Demonstrates a simple popup window. MLIST.SPP Multi-select List Window. Demonstrates a simple multiple- selection list window. Also shows how to position a popup window in the list. MODLIST.SPP Module List. Demonstrates how to handle events from other objects to maintain the contents of a list. Implements some of the functionality provided by the "Script | Modules" dialog.